package com.meilai.project.controller.web.adMake.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.meilai.project.dto.base.PageReq;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDate;
import java.util.List;

/**
 * @Author yxg
 * @Date 2022/8/11 0:18
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel
public class BillAdMakeSearchParams extends PageReq {

    @ApiModelProperty(value = "分公司ID")
    private Long dept_id;

    @ApiModelProperty(value = "客户ID（项目ID）")
    private Long customer_id;

    @ApiModelProperty(value = "合同编号")
    private String contract_num;

    @ApiModelProperty("当前状态")
    private Integer flow_status;

    @ApiModelProperty(value = "最晚上刊日期(开始)")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate latest_up_date_start;

    @ApiModelProperty(value = "最晚上刊日期(结束)")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate latest_up_date_end;

    @ApiModelProperty(value = "最晚下刊日期(开始)")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate latest_down_date_start;

    @ApiModelProperty(value = "最晚下刊日期(结束)")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate latest_down_date_end;

    @ApiModelProperty("标记状态，1：未标记，2：审批中，3：已标记（for历史制作单）")
    private Integer mark_status;

    @ApiModelProperty(value = "市场单ID（for历史制作单）")
    private Long bill_market_id;

    @ApiModelProperty("主键List")
    private List<Long> ids;

    @ApiModelProperty("供应商ids字符串，英文逗号分割")
    private String supplier_ids_str;
    @ApiModelProperty("供应商ids")
    private List<Long> supplier_ids;

    @ApiModelProperty(value = "提交日期(开始)")
    private String created_at_start;

    @ApiModelProperty(value = "提交日期(结束)")
    private String created_at_end;

    @ApiModelProperty(value = "不用传（自动获取）", hidden = true)
    private Long currentUserId;
}
